Configurer le serveur SSMTP avec un compte Gmail
Ayant quelques scripts qui tournent via le Cron de mon serveur j’avais besoin de savoir ce qu’il se passait et surtout de savoir quand ça ne fonctionnait pas comme prévu. Comme je ne me connecte pas tous les jours sur le serveur, je l’ai configuré de façon à ce qu’il me notifie par mail et pour ce faire j’ai dû installer et configurer un serveur mail. Ayant des douloureux souvenirs de Postfix, mon choix s’est tourné vers SSMTP car il avait l’air de bien faire son boulot, à savoir être simple et envoyer des mails.
Installation du serveur de mail SSMTP
Pas grand chose à faire, juste installer le paquet SSMTP via les dépôts :
$ sudo aptitude install ssmtp
Configuration
Comme je le disais c’est simple à configurer puisqu’il suffit d’éditer deux fichiers. Le premier /etc/ssmtp/ssmtp.conf pour la configuration :
mailhub=smtp.gmail.com:587
UseSTARTTLS=YES
FromLineOverride=YES
AuthUser=login_gmail
AuthPass=password_gmail
Et le deuxième, /etc/ssmtp/revaliases afin de spécifier quel compte SMTP doit être utilisé pour tel ou tel utilisateur sur la machine:
root:username@gmail.com:smtp.gmail.com:587
Julien:username@gmail.com:smtp.gmail.com:587
Pour plus d’informations sur l’installation du serveur je vous renvoie à la doc : http://doc.ubuntu-fr.org/ssmtp
Test du serveur
Histoire de voir que tout fonctionne correctement, nous allons tester l’envoie de mail en ligne de commande et pour cela, il suffit d’installer le paquet mailutils :
sudo aptitude install mailutils
Pour envoyer un mail c’est simple il suffit d’exécuter la commande suivante :
echo Contenu du mail | mail -s "sujet de l’email" username@example.com
Notez que vous pouvez voir si votre mail est bien parti, en regardant les fichiers de logs :
tail /var/log/mail.log
next note if authorize problem by gmail add this
Take the step mentioned earlier. Log into your google email account and then go to this link: https://www.google.com/settings/security/lesssecureapps and set "Access for less secure apps" to ON. Test to see if your issue is resolved. If it isn't resolved, as it wasn't for me, continue to Step #2.